package com.seamtop.cuber.common.metadata;

/**
 * Created by feng on 2015/8/10.
 */
public class Column {

    /**
     * 列名
     */
    private String columnName;

    /**
     * 列描述
     */
    private String columnDesc;

    /**
     * 字段类型
     */
    private int columnType;

    /**
     * 字段类型描述
     */
    private String columnTypeDesc;

    /**
     * 字段字符长度
     */
    private int columnMaxSize;

    /**
     * 是否必填
     */
    private boolean ifRequired;

    /**
     * 列所在列族名称
     */
    private String familyName;

    /**
     * 是否为关联列
     */
    private boolean isJoinColumn = false;

    /**
     * 关联表
     */
    private String joinTable;

    /**
     * 关联列族
     */
    private String joinFamily;

    /**
     * 关联字段
     */
    private String joinBy;

    /**
     * 列前缀
     */
    private String prefix;

    private String match;

    /**
     * 是否为自增字段
     */
    private boolean isIncrement = false;

    /**
     * 是否为主键依赖字段
     */
    private boolean isPrimaryDepend = false;

    public String getColumnName() {
        return columnName;
    }

    public void setColumnName(String columnName) {
        this.columnName = columnName;
    }

    public String getColumnDesc() {
        return columnDesc;
    }

    public void setColumnDesc(String columnDesc) {
        this.columnDesc = columnDesc;
    }


    public int getColumnMaxSize() {
        return columnMaxSize;
    }

    public void setColumnMaxSize(int columnMaxSize) {
        this.columnMaxSize = columnMaxSize;
    }

    public boolean isIfRequired() {
        return ifRequired;
    }

    public void setIfRequired(boolean ifRequired) {
        this.ifRequired = ifRequired;
    }

    public String getFamilyName() {
        return familyName;
    }

    public void setFamilyName(String familyName) {
        this.familyName = familyName;
    }

    public int getColumnType() {
        return columnType;
    }

    public void setColumnType(int columnType) {
        this.columnType = columnType;
    }

    public boolean isJoinColumn() {
        return isJoinColumn;
    }

    public void setIsJoinColumn(boolean isJoinColumn) {
        this.isJoinColumn = isJoinColumn;
    }

    public String getJoinTable() {
        return joinTable;
    }

    public void setJoinTable(String joinTable) {
        this.joinTable = joinTable;
    }

    public String getJoinBy() {
        return joinBy;
    }

    public void setJoinBy(String joinBy) {
        this.joinBy = joinBy;
    }

    public boolean isIncrement() {
        return isIncrement;
    }

    public void setIsIncrement(boolean isIncrement) {
        this.isIncrement = isIncrement;
    }

    public void setJoinColumn(boolean isJoinColumn) {
        this.isJoinColumn = isJoinColumn;
    }

    public String getPrefix() {
        return prefix;
    }

    public void setPrefix(String prefix) {
        this.prefix = prefix;
    }

    public void setIncrement(boolean isIncrement) {
        this.isIncrement = isIncrement;
    }

    public String getMatch() {
        return match;
    }

    public void setMatch(String match) {
        this.match = match;
    }

    public String getColumnTypeDesc() {
        return columnTypeDesc;
    }

    public void setColumnTypeDesc(String columnTypeDesc) {
        this.columnTypeDesc = columnTypeDesc;
    }

    public String getJoinFamily() {
        return joinFamily;
    }

    public void setJoinFamily(String joinFamily) {
        this.joinFamily = joinFamily;
    }

    public boolean isPrimaryDepend() {
        return isPrimaryDepend;
    }

    public void setIsPrimaryDepend(boolean isPrimaryDepend) {
        this.isPrimaryDepend = isPrimaryDepend;
    }
}
